module.exports = {
    publicPath: './',
    configureWebpack: (config) => {
        if (process.env.NODE_ENV === 'production') { // 为生产环境修改配置...
            config.mode = 'production'
            config.performance = { // 打包文件大小配置
                maxEntrypointSize: 10000000,
                maxAssetSize: 30000000
            }
        }
    },
    chainWebpack: config => {
        config.when(process.env.NODE_ENV === 'production', config => {
            config.entry('app').clear().add('./src/main-prod.js')

            config.set('externals', {
                vue: 'Vue',
                axios: 'axios',
                lodash: '_',
                'vue-router': 'VueRouter',
                wangEditor: 'Editor',
                echarts: 'echarts',
                nprogress: 'NProgress'
            })
            config.plugin('html').tap(args => {
                args[0].isProd = true
                return args
            })
        })

        config.when(process.env.NODE_ENV === 'development', config => {
            config.entry('app').clear().add('./src/main-dev.js')
            config.plugin('html').tap(args => {
                args[0].isProd = false
                return args
            })
        })
    }
}
